home *** CD-ROM | disk | FTP | other *** search
Text File | 1999-06-26 | 1.8 KB | 79 lines | [TEXT/MPS ] |
- /*
- File: Brickout.c
-
- Contains: A sample dcmd which plays brickout.
-
- Written by: Andy Bachorski
-
- Copyright: © 1999 by Andy Bachorski
-
- Change History (most recent first):
-
- <1> 99-6-26 Written at the MacHack 99 Hack Contest.
-
-
- */
-
- //******************************************************************************
-
- //#include "MEB.h"
-
- #include <LowMem.h>
-
- #include "dcmd.h"
-
-
- //******************************************************************************
-
- pascal void CommandEntry (dcmdBlock* paramPtr)
- {
- Boolean okToRun = false;
-
- switch( paramPtr->request )
- {
- case dcmdInit:
- break;
-
- case dcmdHelp:
- dcmdDrawLine("\p A magic 8-Ball for your debugging pleasure.");
- break;
-
- case dcmdGetInfo:
- * (long *) &((GetInfoRequestBlockPtr) paramPtr->requestIOBlock)->dcmdVersion = 0x01002000; // version 3.0 final
- break;
-
- case dcmdDoIt:
- {
- long tics = TickCount();
- long index = tics % 8;
- long i;
-
- for ( i = 0; i < index; i ++ )
- {
- DebuggerPoll();
- }
-
- switch ( index )
- {
- case 0 : dcmdDrawLine("\p Future uncertain - try again"); break;
- case 1 : dcmdDrawLine("\p Blame it on cosmic rays."); break;
- case 2 : dcmdDrawLine("\p It must be a hardware problem."); break;
- case 3 : dcmdDrawLine("\p Where did you learn to write code like this."); break;
- case 4 : dcmdDrawLine("\p Most likely it's heap corruption."); break;
- case 5 : dcmdDrawLine("\p Stack trace is your friend."); break;
- case 6 : dcmdDrawLine("\p Are your stack and heap getting to close to each other?"); break;
- case 7 : dcmdDrawLine("\p Do you still have the box this computer came in?"); break;
- }
- }
- break;
-
- // Version 3 and newer dcmds must quietly ignore requests we don't recognize.
-
- default:
- break;
- }
-
- } // CommandEntry
-
- //******************************************************************************
-